from django.conf.urls import patterns, url
from django.views import generic
from forms import LocalidadForm
from localidades.forms import PaisForm, DepartamentoProvinciaForm, CiudadForm, \
    RegionForm, CoordenadaForm, LugarForm
from localidades.models import Pais, DepartamentoProvincia, Ciudad, Region, \
    Coordenada, Lugar
from models import Localidad
import autocomplete_light


urlpatterns = patterns('localidades.views',
                       
    url(r'^$', 'listar',name='localidades_listar'),
    url(r'^listar/(?P<tipo_de_lugar>\w+)/$', 'listar_por',name='listar_por'),
    url(r'^listar/(?P<tipo_de_lugar>\w+)/por/(?P<ordenar_por>\w+)/$', 'listar_por_ordenar',name='listar_por_ordenar'),
    url(r'^crear/$', 'listar_opciones_para_crear',name='crear'),
    url(r'^(?P<object_id>\d+)/$', 'ver',name='localidades_ver'),
    url(r'^crear/(?P<tipo_de_lugar>\w+)/$', 'crear',name='localidades_crear'),
    url(r'^(?P<object_id>\d+)/editar/$', 'editar',name='localidades_editar'),
    url(r'^(?P<object_id>\d+)/eliminar/$', 'eliminar',name='localidades_eliminar'),                       
                       
    #localidad
    url(r'^add/$', 
        autocomplete_light.CreateView.as_view(model=Localidad,form_class=LocalidadForm), 
        name='localidad_create'),
    url(r'^(?P<pk>\d+)/update/$', generic.UpdateView.as_view(
        model=Localidad,form_class=LocalidadForm ), name='localidad_update'),
                       
    #lugar
    url(r'lugares/add/$', 
        autocomplete_light.CreateView.as_view(model=Lugar,form_class=LugarForm), 
        name='lugar_create'),
    url(r'lugares/(?P<pk>\d+)/update/$', generic.UpdateView.as_view(
        model=Lugar,form_class=LugarForm ), name='lugar_update'),
    
    #pais
    url(r'paises/add/$', 
        autocomplete_light.CreateView.as_view(model=Pais,form_class=PaisForm), 
        name='pais_create'),
    url(r'paises/(?P<pk>\d+)/update/$', generic.UpdateView.as_view(
        model=Pais,form_class=PaisForm ), name='pais_update'),
                       
    #departamento/provincia
    url(r'deptos/add/$', 
        autocomplete_light.CreateView.as_view(model=DepartamentoProvincia,form_class=DepartamentoProvinciaForm), 
        name='departamento_provincia_create'),
    url(r'deptos/(?P<pk>\d+)/update/$', generic.UpdateView.as_view(
        model=DepartamentoProvincia,form_class=DepartamentoProvinciaForm ), name='departamento_provincia_update'),
                       
    #ciudad                   
    url(r'ciudades/add/$', 
        autocomplete_light.CreateView.as_view(model=Ciudad,form_class=CiudadForm), 
        name='ciudad_create'),
    url(r'ciudades/(?P<pk>\d+)/update/$', generic.UpdateView.as_view(
        model=Ciudad,form_class=CiudadForm ), name='ciudad_update'),

    #region                   
    url(r'regiones/add/$', 
        autocomplete_light.CreateView.as_view(model=Region,form_class=RegionForm), 
        name='region_create'),
    url(r'regiones/(?P<pk>\d+)/update/$', generic.UpdateView.as_view(
        model=Region,form_class=RegionForm ), name='region_update'),
                       
    #coordenadas       
    url(r'coordenadas/add/$', 
        autocomplete_light.CreateView.as_view(
                                              model=Coordenada,
                                              form_class=CoordenadaForm), 
        name='coordenada_create'),
    url(r'coordenadas/(?P<pk>\d+)/update/$', generic.UpdateView.as_view(
        model=Coordenada, form_class=CoordenadaForm), name='coordenada_update'),


)